home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Amiga Format CD 7
/
Amiga Format AFCD07 (Dec 1996, Issue 91).iso
/
serious
/
shareware
/
programming
/
emacs-complete
/
fsf
/
emacs
/
vms
/
vmsdist.com
< prev
next >
Wrap
Text File
|
1992-11-12
|
3KB
|
123 lines
$! Command file to build Emacs on VMS and create a backup saveset.
$!
$! Argument list
$! P1 (opt) name of the tape output device.
$!
$! History
$! rms, 16 May 1988
$! original version
$! rbr, 30 Oct 1992, roberts@nsrl31.nsrl.rochester.edu
$! modified to make this location independent.
$!
$!
$! We assume this file is in disk:[dir.emacs19.vms], where `disk' may be
$! a concealed device name. The default directory is moved to the location
$! of this file, and the backup saveset will be contain disk:[dir...]*.*
$!
$! We also assume that the tar-tape reader has changed all `-' to `_'
$! in filenames. If this is not so, delete the first `@allrename' command.
$!
$! You must also edit the mag tape device name
$! And the Emacs version that appears in the saveset name.
$!
$!
$! Get a valid tape device name
$!
$ tape = p1
$ prompt:
$ if tape .eqs. ""
$ then inquire tape "Tape device destination for distribution files"
$ endif
$ if f$getdvi(tape,"EXISTS") .eqs. "FALSE" then goto prompt
$ if f$getdvi(tape,"DEVCLASS") .ne. 2 then goto prompt
$ if f$locate(":",tape) .eq. f$length(tape) then tape = tape + ":"
$!
$! Set the default directory to the root of the emacs distribution
$!
$ home = f$environment("DEFAULT")
$ path = f$environment("PROCEDURE")
$ path = f$extract(0,f$locate("]",path)+1,path)
$ set default 'path'
$!
$! Change to VMS 4.4 filenames.
$!
$ @[.vms]allrename [...] "_" "-"
$!
$! Edit the configuration files.
$!
$ set default [-.src]
$ copy vmspaths.h paths.h
$ copy config.h-dist config.h
$ edit/edt/nocommand config.h
s/"@opsystemi@"/"[.s]vms4-4.h"/w
s/"@machine@"/"[.m]vms.h"/w
exit
$!
$! Compile, link and dump Emacs.
$!
$ @compile
$ @link
$ @[-.vms]complink
$ @[-.vms]makedoc
$ @build
$!
$! Move the executable and image to the appropriate place.
$!
$ rename temacs.exe [-]emacs.exe
$ rename temacs.dump [-]emacs.dump
$ copy sys$library:vaxcrtl.olb vaxcrtl.olb
$!
$! Recompile a few files for vms version 4.2.
$! Call these object files for 4.2 `.jbo'.
$!
$ edit/edt/nocommand config.h
s/vms4-4/vms4-2/w
exit
$ rename doc.obj doc.obx
$ rename fileio.obj fileio.obx
$ rename sysdep.obj sysdep.obx
$ rename vmsfns.obj vmsfns.obx
$ 'ccom' doc
$ 'ccom' fileio
$ 'ccom' sysdep
$ 'ccom' vmsfns
$ rename doc.obj doc.jbo
$ rename fileio.obj fileio.jbo
$ rename sysdep.obj sysdep.jbo
$ rename vmsfns.obj vmsfns.jbo
$ rename *.obx *.obj
$ delete config.h;-1
$!
$! Change all files back to the names that VMS 4.2 can read in.
$!
$ set default [-]
$ @allrename [...] "-" "_"
$!
$! Set up the device name for the backup, assume we are located in [.vms]
$! of the Emacs directory tree.
$!
$ olddef = f$environment("DEFAULT")
$ path = f$environment("PROCEDURE")
$ path = f$extract(0,f$locate("]",path)+1,path)
$ set default 'path'
$ set default [-.-]
$ path = f$environment("DEFAULT")
$ set default 'olddef'
$ if f$parse(path,,,"DEVICE") .nes. f$parse(path,,,"DEVICE","NO_CONCEAL")
$ then
$ disk = f$parse(path,,,"DEVICE","NO_CONCEAL")
$ disk = disk + f$parse(path,,,"DIRECTORY") - "]" + ".]"
$ else
$ disk = path - "]" + ".]"
$ endif
$!
$! Dump onto tape.
$!
$ mount /foreign 'tape'
$ define /translation=concealed dumping 'disk'
$ set def dumping:[emacs]
$ backup /interchange /verify /list [...] 'tape'emacs19.0
$ dismount 'tape'
$!
$ set default 'home'
$ exit